
using Core.SimpleTemp.Common;
using Core.SimpleTemp.Entitys;
using Core.Toolkit.Core.Application;
using System;
using System.ComponentModel.DataAnnotations;

namespace Core.SimpleTemp.Application
{
    [CreateMap(typeof(YH_ScreeningDetail))]
    public class YH_ScreeningDetailDto : Dto
    {
        /// <summary>
        /// 排查类型（数据来源主表）
        /// </summary>
        public String StandardTypeText { get; set; } 
        /// <summary>
        /// 是否为计划内排查（或者是排查时又新增的）
        /// </summary>
        public bool IsNotPlan { get; set; }
        public Guid? ScreeningId { get; set; } 
        public Guid? ScreeningDetailId { get; set; }
        public Guid? ScreeningProjectId { get; set; }
        #region *
        /// <summary>
        /// 隐患排查计划项目ID
        /// </summary>
        public Guid? ScreeningPlanProjectId { get; set; }
        /// <summary>
        /// 排查大类代码
        /// </summary>
        public String SearchMajorCode { get; set; }
        /// <summary>
        /// 隐患类型ID
        /// </summary>
        public Guid? HazardTypeID { get; set; }
        [ConcurrentKeyToValue("095036", "HazardTypeID")]
        public String HazardTypeName { get; set; } 
        /// <summary>
        /// 排查标准ID
        /// </summary>
        public Guid? StandardID { get; set; }
        /// <summary>
        /// 排查标准内容
        /// </summary>
        public String StandardContent { get; set; }
        #endregion

        /// <summary>
        /// 上报分类(0计划/1非计划) *pd没有
        /// </summary>
        public String ReportType { get; set; }
        /// <summary>
        /// 排查计划项目明细ID *pd没有
        /// </summary>
        public Guid? ScreeningPlanProDetailId { get; set; }
        /// <summary>
        /// 检查时间 *pd没有
        /// </summary>
        public DateTime? InspectTime { get; set; }
        /// <summary>
        ///知识库，基础库，手工 不用字典了 贼麻烦
        /// </summary>
        [StringLength(20)]
        public String Type { get; set; }
        /// <summary>
        /// 排查结果
        /// </summary>
        [StringLength(20)]
        public String result { get; set; }
        /// <summary>
        /// 隐患台账ID
        /// </summary>
        public Guid? StandingBookId { get; set; }
        /// <summary>
        /// 隐患台账编码
        /// </summary>
        [StringLength(50)]
        public String StandingBookNo { get; set; }
        /// <summary>
        /// 状态(保存/提交)
        /// </summary>
        public String Status { get; set; }
        /// <summary>
        /// 排查项目 *pd没有
        /// </summary>
        public String ClearanceProjects { get; set; }
        /// <summary>
        /// 区域 *pd没有
        /// </summary>
        public Guid? AreaID { get; set; }
        [ConcurrentKeyToValue("97", "AreaID")]
        public String AreaName { get; set; }
        /// <summary>
        /// 位置 *pd没有
        /// </summary>
        public Guid? LocationID { get; set; }
        /// <summary>
        /// 位置 *pd没有
        /// </summary>
        [ConcurrentKeyToValue("7556", "LocationID")]
        public String LocationName { get; set; }
        /// <summary>
        /// 排查人
        /// </summary>
        public Guid? PersonID { get; set; }
        /// <summary>
        /// 排查时间
        /// </summary>
        public DateTime? Time { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public Guid? CreateFactory { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public Guid? CreateDept { get; set; }
        /// <summary>
        /// 
        /// </summary>
        public Guid? UpdateDept { get; set; }

        /// <summary>
        /// 排查计划明细
        /// </summary>
        //public YH_ScreeningPlanProDetailDto YH_ScreeningPlanProDetail { get; set; }

        public Guid? RiskLevel { get; set; }

        [ConcurrentKeyToValue("03", "RiskLevel")]
        public string RiskLevelText { get; set; }

        public YH_StandingBookDto YH_StandingBook { get; set; }
    }
}
